﻿using FluentValidation.Attributes;
using Nop.Admin.Validators.Media;
using Nop.Core.Domain.Media;
using Nop.Web.Framework;
using Nop.Web.Framework.Mvc;
using System.Collections.Generic;
using System.Web.Mvc;

namespace Nop.Admin.Models.Media
{
    [Validator(typeof(PictureLinkCollectionValidator))]
    public class PictureLinkCollectionModel : BaseNopEntityModel
    {
        public PictureLinkCollectionModel()
        {
            PictureLinkModels = new List<PictureLinkModel>();
        }

        [NopResourceDisplayName("Admin.Media.PictureLink.Collection.Fields.RelatedContent")]
        public int RelatedContentId { get; set; }
        public IList<SelectListItem> RelatedContents { get; set; }

        [NopResourceDisplayName("Admin.Media.PictureLink.Collection.Fields.RelatedContentCategory")]
        public string RelatedContentCategory { get; set; }
        public IList<SelectListItem> RelatedContentCategories { get; set; }
        

        [NopResourceDisplayName("Admin.Media.Fields.SystemName")]
        public string SystemName { get; set; }
        [NopResourceDisplayName("Admin.Media.PictureLink.Collection.Fields.PictureDisplayType")]
        public PictureDisplayType PictureDisplayType { get; set; }

        #region Model Properties

        public PictureLinkModel AddPictureLinkModel { get; set; }
        public IList<PictureLinkModel> PictureLinkModels { get; set; }
        public IList<PictureDisplayType> PictureDisplayTypeOptions { get; set; }
        public PictureDisplayType[] SelectedPictureDisplayTypeOptions { get; set; }

        #endregion
    }
}